package com.yanqu.road.entity.log;

import com.yanqu.road.entity.FieldTypeAnnotation;
import com.yanqu.road.entity.activity.xiuxian.data.XiuXianEquipmentData;

import java.util.Date;
import java.util.List;

@FieldTypeAnnotation(tableName = "t_l_ck_xiuxian_power_val", desc = "凡人修仙传-战力变更日志", autoSave = true, uploadCk = true)
public class LogXiuXianPowerVal extends ServerBaseLog {

    @FieldTypeAnnotation(desc = "用户ID", isIndex = true)
    private long userId;
    @FieldTypeAnnotation(desc = "活动ID", isIndex = true)
    private int activityId;
    @FieldTypeAnnotation(desc = "类型，1境界提升，2更换法宝")
    private int type;
    @FieldTypeAnnotation(desc = "变化数量")
    private long changeCount;
    @FieldTypeAnnotation(desc = "变化后最新数量")
    private long newCount;
    @FieldTypeAnnotation(desc = "提升前境界")
    private int oldStateId;
    @FieldTypeAnnotation(desc = "提升后境界")
    private int newStateId;
    @FieldTypeAnnotation(desc = "更换法宝id")
    private int equipmentId;
    @FieldTypeAnnotation(desc = "法宝列表", saveJson = true)
    private List<XiuXianEquipmentData> equipmentDataList;

    public LogXiuXianPowerVal(long userId, int activityId, int type, long changeCount, long newCount, int oldStateId, int newStateId, int equipmentId, List<XiuXianEquipmentData> equipmentDataList) {
        this.userId = userId;
        this.activityId = activityId;
        this.type = type;
        this.changeCount = changeCount;
        this.newCount = newCount;
        this.oldStateId = oldStateId;
        this.newStateId = newStateId;
        this.equipmentId = equipmentId;
        this.equipmentDataList = equipmentDataList;
    }

    @Override
    public long getUserId() {
        return userId;
    }
}
